﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200019B RID: 411
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class CellMonsterInfo : IMessage<CellMonsterInfo>, IMessage, IEquatable<CellMonsterInfo>, IDeepCloneable<CellMonsterInfo>, IBufferMessage
	{
		// Token: 0x17000565 RID: 1381
		// (get) Token: 0x0600127C RID: 4732 RVA: 0x000350CB File Offset: 0x000332CB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<CellMonsterInfo> Parser
		{
			get
			{
				return CellMonsterInfo._parser;
			}
		}

		// Token: 0x17000566 RID: 1382
		// (get) Token: 0x0600127D RID: 4733 RVA: 0x000350D2 File Offset: 0x000332D2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return CellMonsterInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000567 RID: 1383
		// (get) Token: 0x0600127E RID: 4734 RVA: 0x000350E4 File Offset: 0x000332E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return CellMonsterInfo.Descriptor;
			}
		}

		// Token: 0x0600127F RID: 4735 RVA: 0x000350EB File Offset: 0x000332EB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellMonsterInfo()
		{
		}

		// Token: 0x06001280 RID: 4736 RVA: 0x00035100 File Offset: 0x00033300
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellMonsterInfo(CellMonsterInfo other) : this()
		{
			this.cellMonsterList_ = other.cellMonsterList_.Clone();
			this.confirm_ = other.confirm_;
			this.selectBossId_ = other.selectBossId_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06001281 RID: 4737 RVA: 0x0003514D File Offset: 0x0003334D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellMonsterInfo Clone()
		{
			return new CellMonsterInfo(this);
		}

		// Token: 0x17000568 RID: 1384
		// (get) Token: 0x06001282 RID: 4738 RVA: 0x00035155 File Offset: 0x00033355
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<CellMonster> CellMonsterList
		{
			get
			{
				return this.cellMonsterList_;
			}
		}

		// Token: 0x17000569 RID: 1385
		// (get) Token: 0x06001283 RID: 4739 RVA: 0x0003515D File Offset: 0x0003335D
		// (set) Token: 0x06001284 RID: 4740 RVA: 0x00035165 File Offset: 0x00033365
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Confirm
		{
			get
			{
				return this.confirm_;
			}
			set
			{
				this.confirm_ = value;
			}
		}

		// Token: 0x1700056A RID: 1386
		// (get) Token: 0x06001285 RID: 4741 RVA: 0x0003516E File Offset: 0x0003336E
		// (set) Token: 0x06001286 RID: 4742 RVA: 0x00035176 File Offset: 0x00033376
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint SelectBossId
		{
			get
			{
				return this.selectBossId_;
			}
			set
			{
				this.selectBossId_ = value;
			}
		}

		// Token: 0x06001287 RID: 4743 RVA: 0x0003517F File Offset: 0x0003337F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as CellMonsterInfo);
		}

		// Token: 0x06001288 RID: 4744 RVA: 0x00035190 File Offset: 0x00033390
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(CellMonsterInfo other)
		{
			return other != null && (other == this || (this.cellMonsterList_.Equals(other.cellMonsterList_) && this.Confirm == other.Confirm && this.SelectBossId == other.SelectBossId && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06001289 RID: 4745 RVA: 0x000351F0 File Offset: 0x000333F0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.cellMonsterList_.GetHashCode();
			if (this.Confirm)
			{
				num ^= this.Confirm.GetHashCode();
			}
			if (this.SelectBossId != 0U)
			{
				num ^= this.SelectBossId.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600128A RID: 4746 RVA: 0x00035256 File Offset: 0x00033456
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600128B RID: 4747 RVA: 0x0003525E File Offset: 0x0003345E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600128C RID: 4748 RVA: 0x00035268 File Offset: 0x00033468
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Confirm)
			{
				output.WriteRawTag(64);
				output.WriteBool(this.Confirm);
			}
			if (this.SelectBossId != 0U)
			{
				output.WriteRawTag(80);
				output.WriteUInt32(this.SelectBossId);
			}
			this.cellMonsterList_.WriteTo(ref output, CellMonsterInfo._repeated_cellMonsterList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600128D RID: 4749 RVA: 0x000352D4 File Offset: 0x000334D4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.cellMonsterList_.CalculateSize(CellMonsterInfo._repeated_cellMonsterList_codec);
			if (this.Confirm)
			{
				num += 2;
			}
			if (this.SelectBossId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.SelectBossId);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600128E RID: 4750 RVA: 0x00035334 File Offset: 0x00033534
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CellMonsterInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.cellMonsterList_.Add(other.cellMonsterList_);
			if (other.Confirm)
			{
				this.Confirm = other.Confirm;
			}
			if (other.SelectBossId != 0U)
			{
				this.SelectBossId = other.SelectBossId;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600128F RID: 4751 RVA: 0x00035395 File Offset: 0x00033595
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06001290 RID: 4752 RVA: 0x000353A0 File Offset: 0x000335A0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 64U)
				{
					if (num != 80U)
					{
						if (num != 90U)
						{
							this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
						}
						else
						{
							this.cellMonsterList_.AddEntriesFrom(ref input, CellMonsterInfo._repeated_cellMonsterList_codec);
						}
					}
					else
					{
						this.SelectBossId = input.ReadUInt32();
					}
				}
				else
				{
					this.Confirm = input.ReadBool();
				}
			}
		}

		// Token: 0x040007A5 RID: 1957
		private static readonly MessageParser<CellMonsterInfo> _parser = new MessageParser<CellMonsterInfo>(() => new CellMonsterInfo());

		// Token: 0x040007A6 RID: 1958
		private UnknownFieldSet _unknownFields;

		// Token: 0x040007A7 RID: 1959
		public const int CellMonsterListFieldNumber = 11;

		// Token: 0x040007A8 RID: 1960
		private static readonly FieldCodec<CellMonster> _repeated_cellMonsterList_codec = FieldCodec.ForMessage<CellMonster>(90U, CellMonster.Parser);

		// Token: 0x040007A9 RID: 1961
		private readonly RepeatedField<CellMonster> cellMonsterList_ = new RepeatedField<CellMonster>();

		// Token: 0x040007AA RID: 1962
		public const int ConfirmFieldNumber = 8;

		// Token: 0x040007AB RID: 1963
		private bool confirm_;

		// Token: 0x040007AC RID: 1964
		public const int SelectBossIdFieldNumber = 10;

		// Token: 0x040007AD RID: 1965
		private uint selectBossId_;
	}
}
